package com.yuanfeng.job.mapper;

import com.yuanfeng.commoms.dto.job.ExpireMarkIdUpdateDTO;
import com.yuanfeng.job.dto.ActivityNoneRecSlideDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author Stranger
 * @date 2023/5/16 15:42
 */
@Mapper
public interface UpdateActivityStatusMapper {

    /**
     *  商品状态更新
     * @return
     */
    Integer updatePromotionGoods();

    /**
     *  限时折扣过期状态更新
     * @return
     */
    Integer updatePromotionDiscountBase();

    /**
     *限时折扣商品过期状态更新
     * @return
     */
    Integer updatePromotionDiscountGoods();


    /**
     * 更新限时折扣
     */
    void updatePromotionDiscountBase2();

    /**
     * 更新限时折扣商品
     */
    void updatePromotionDiscountGoods2();

    /**
     * 更新限时折扣
     */
    void updatePromotionDiscountBase3();

    /**
     * 更新限时折扣商品
     */
    void updatePromotionDiscountGoods3();


    /**
     * 查询过期的团标识
     * @return
     */
    List<String> selectExpireMark();

    /**
     * 更新拼团信息
     * @param param
     */
    void updateMarkStatus(@Param("param") ExpireMarkIdUpdateDTO param);

    /**
     * 订单状态更新
     * @param expireMarkIdList
     * @return
     */
    List<String> selectByMarkId(@Param("expireMarkIdList")List<String> expireMarkIdList);

    /**
     * 查询过期的拼团数量
     * @return
     */
    Integer slectDetailId();

    /**
     * 拼团过期状态更新
     * @return
     */
    Integer updatePintuanMarkStatus();


    /**
     * 商品状态更新
     * @return
     */
    Integer updatePintuanGoods();

    /**
     * 拼团过期状态更新
     * @return
     */
    Integer updatePintuanStatus();

    /**
     * 满减赠折商品状态更新
     * @return
     */
    Integer updateManjianzengzheGoods();

    /**
     * 满减赠折过期状态更新
     * @return
     */
    Integer updateManjianzengzheStatus();


    /**
     * 商品状态更新
     * @return
     */
    Integer updateSkillGoodsStatus();

    /**
     * 秒杀商品状态更新
     * @return
     */
    Integer updateSkillGoods();

    /**
     * 秒杀过期状态更新
     * @return
     */
    Integer updateGoodsStatus();


    void updateSkillGoods2();


    void updateSkillGoodsStatus2();


    void updateGoodsStatus2();

    /**
     *拼团待开启状态更新
     * @return
     */
    Integer updatePintuanStatus2();

    /**
     *满减赠折待开始状态更新
     * @return
     */
    Integer updateManjianzengzheStatus2();

    List<ActivityNoneRecSlideDTO> queryCommonIdBySeckillStockZero();

    void updatCommonIsXian(@Param("commonId") Integer commonId,@Param("commonIsXian") Integer commonIsXian);
}
